A universal mobile telecommunications system (UMTS) is a third-generation mobile communications system evolving from a global system for mobile communications system (GSM), which is the European standard. The UMTS is aimed at providing enhanced mobile communications services based on the GSM core network and wideband code-division multiple-access (W-CDMA) technologies.
In December 1998, ETSI of Europe, ARIB/TTC of Japan, T1 of the United States, and TTA of Korea formed a Third Generation Partnership Project (3GPP) for creating detailed specifications of the UMTS technology. Within the 3GPP, in order to achieve rapid and efficient technical development of the UMTS, five technical specification groups (TSG) have been created for determining the specification of the UMTS by considering the independent nature of the network elements and their operations.
Each TSG develops, approves, and manages the specification within a related region. Among these groups, the radio access network (RAN) group (TSG-RAN) develops the specifications for the functions, requirements, and interface of the UMTS terrestrial radio access network (UTRAN), which is a new radio access network for supporting W-CDMA access technology in the UMTS.
A related art UMTS network structure 1 is illustrated in FIG. 1. As shown, a mobile terminal, or user equipment (UE) 2 is connected to a core network (CN) 4 through a UMTS terrestrial radio access network (UTRAN) 6. The UTRAN 6 configures, maintains and manages a radio access bearer for communications between the UE 2 and the core network 4 to meet end-to-end quality of service requirements.
The UTRAN 6 includes at least one radio network subsystem (RNS) 8, each of which comprises one radio network controller (RNC) 10 for a plurality base stations, or Node Bs 12. The RNC 10 connected to a given base station 12 is the controlling RNC for allocating and managing the common resources provided for any number of UEs 2 operating in one cell. One or more cells exist in one Node B. The controlling RNC 10 controls traffic load, cell congestion, and the acceptance of new radio links. Each Node B 12 may receive an uplink signal from a UE 2 and may transmit a downlink signals to the UE 2. Each Node B 12 serves as an access point enabling a UE 2 to connect to the UTRAN 6, while an RNC 10 serves as an access point for connecting the corresponding Node Bs to the core network 4.
Among the radio network subsystems 8 of the UTRAN 6, the serving RNC 10 is the RNC managing dedicated radio resources for the provision of services to a specific UE 2 and is the access point to the core network 4 for data transfer to the specific UE. All other RNCs 10 connected to the UE 2 are drift RNCs, such that there is only one serving RNC connecting the UE to the core network 4 via the UTRAN 6. The drift RNCs 10 facilitate the routing of user data and allocate codes as common resources.
The interface between the UE 2 and the UTRAN 6 is realized through a radio interface protocol established in accordance with radio access network specifications describing a physical layer (L1), a data link layer (L2) and a network layer (L3) described in, for example, 3GPP specifications. These layers are based on the lower three layers of an open system interconnection (OSI) model that is well known in communications systems.
A related art architecture of the radio interface protocol is illustrated in FIG. 2. As shown, the radio interface protocol is divided horizontally into a physical layer, a data link layer, and a network layer, and is divided vertically into a user plane for carrying data traffic such as voice signals and Internet protocol packet transmissions and a control plane for carrying control information for the maintenance and management of the interface. The radio interface protocols are provided in the UE and the UTRAN as a pair, and transmit data within a radio period. Each radio interface protocol layer will be explained.
A first layer, a physical layer (PHY) transmits data to a radio period by using various radio transport techniques. Specifically, the physical layer (PHY) provides information transfer service to a higher layer and is linked via a transport channel (TrCH) to a medium access control (MAC) layer. Through the transport channel (TrCH), data of a wire period is transported reliably between the PHY layer and the MAC layer. The transport channel is divided into a dedicated transport channel and a common transport channel depending on whether a channel is shared. Also, data transmission is performed through a physical channel between different physical layers, namely, between physical layers of a sending side (transmitter) and a receiving side (receiver).
The second layer includes a MAC layer, a radio link control (RLC) layer, a broadcast/multicast control (BMC) layer and a packet data convergence protocol (PDCP) layer. The MAC layer maps various logical channels (LoCH) to various transport channels. The MAC layer also multiplexes logical channels by mapping several logical channels to one transport channel. The MAC layer is connected to an upper RLC layer via the logical channel. The logical channel can be divided into a control channel for transmitting control plane information a traffic channel for transmitting user plane information according to the type of information transmitted.
The MAC layer is divided into a MAC-b sublayer, a MAC-d sublayer, a MAC-c/sh sublayer, a MAC-hs sublayer and a MAC-e sublayer according to the type of transport channel being managed. The MAC-b sublayer manages a broadcast channel (BCH), which is a transport channel handling the broadcast of system information. The MAC-c/sh sublayer manages common transport channels such as an FACH (Forward Access Channel) or a DSCH (Downlink Shared Channel) that is shared by other terminals. The MAC-d sublayer handles the managing of a DCH (Dedicated Channel), namely, a dedicated transport channel for a specific terminal. In order to support uplink and downlink high speed data transmissions, the MAC-hs sublayer manages an HS-DSCH (High Speed Downlink Shared Channel), namely, a transport channel for high speed downlink data transmission, and the MAC-e sublayer manages an E-DCH (Enhanced Dedicated Channel), namely, a transport channel for high speed uplink data transmissions.
The RLC layer guarantees a quality of service (QoS) of each radio bearer (RB) and handles the transmission of corresponding data. The RLC layer includes one or two independent RLC entities for each RB in order to guarantee a particular QoS of each RB. The RLC layer also provides three RLC modes, namely, a Transparent Mode (TM, an Unacknowledged Mode (UM) and an Acknowledged Mode (AM), to support various types of QoS. Also, the RLC controls the size of data to be suitable for a lower layer in transmitting over a radio interface. For this purpose, the RLC segments and concatenates the data received from the upper layer.
A PDCP (Packet Data Convergence Protocol) layer is a higher layer of the RLC layer and allows the data transmitted through a network protocol (such as an IPv4 or IPv6) to be effectively transmitted over a radio interface with a relatively small bandwidth. To achieve this, the PDCP layer performs a header compression function wherein only necessary information is transmitted in a header part of the data to thereby increase transmission efficiency over the radio interface. Because the PDCP layer performs the header compression as a basic function, it exists only at a packet switched (PS) domain. One PDCP entity is provided per RB to provide an effective header compression function with respect to each PS service.
A BMC (Broadcast/Multicast Control) layer, located at an upper portion of the RLC layer in the second layer (L2), schedules a cell broadcast message and broadcasts the message to terminals located in a specific cell.
A radio resource control (RRC) layer located at the lowest portion of the third layer (L3) is defined in the control plane and controls the parameters of the first and second layers with respect to the establishment, reconfiguration and release of RBs. The RRC layer also controls logical channels, transport channels and physical channels. Here, the RB refers to a logical path provided by the first and second layers of the radio protocol for data transmission between the terminal and the UTRAN. In general, the establishment of the RB refers to stipulating the characteristics of a protocol layer and a channel required for providing a specific data service, and setting their respective detailed parameters and operation methods.
Hereinafter, a method for selecting a transport format combination (TFC) performed by the MAC layer will be explained. The TFC selection is for selecting a transport block (TB) of a suitable size and the number of the TBs according to a wireless channel circumstance momentarily changed to thereby efficiently utilize a limited radio resource. The MAC layer transports transport blocks (TBs) to the PHY layer through a transport channel. A transport format (TF) is a definition for a TB size and the number of TBs to be transported by one transport channel. At the time of determining TFs for a specific transport channel, the MAC layer considers transport channel multiplexing in the PHY layer.
Transport channel multiplexing is for mapping plural transport channels into one coded composite transport channel (CCTrCH). Even if the PHY layer performs the transport channel multiplexing, the MAC layer considers every transport channel mapped into the same CCTrCH at the time of determining TFs. Since an amount of data processed by the PHY layer is an amount of data transported through the CCTrCH, the MAC layer determines TFs of each transport channel in consideration to the CCTrCH.
Presently, a combination of TFs is known as a transport format combination (TFC). The TFC is not determined by the MAC layer itself, but rather is selected from a set of available traffic flow templates (TFTS) indicated by the RRC layer of the UTRAN. That is, the RRC layer of the UTRAN informs the MAC layer of a set of available TFCs for one CCTrCH at the time of an initial RB setting, and the MAC layer selects a proper TFC from a set of available TFCs (TFCS) within each transmission time interval (TTI). A terminal RRC receives TFCS information from a UTRAN RRC via an air interface, and informs a terminal MAC layer of the received TFCS information.
The main function of the MAC layer is for selecting an optimum TFC in a TFCS within each TTI. The optimum TFC selection is divided into two steps. First, a valid TFCS is constructed in a TFCS allocated to the CCTrCH. Then, the optimum TFC is selected in the valid TFCS. The valid TFCS is a set of available TFs at a corresponding TTI in a preset TFCS, which is formed because a radio channel circumstance is momentarily changed and thereby a maximum transmission power of a terminal is changed. Since an amount of transmittable data is generally proportional to a size of transmission power, available TFCs are limited by the maximum transmission power.
An optimum TFC indicates a TFC that can optimally transmit data to be transmitted in a valid TFCS limited by the maximum transmission power. The optimum TFC is selected in a valid TFCS on the basis of a logical channel priority, not on the basis of a data transmission amount. Eight priorities, 1 to 8, with 1 being the highest priority, are set to a logical channel. In case that plural logical channels are multiplexed to one transport channel and plural transport channels are multiplexed to one CCTrCH, the MAC layer selects a TFC that can optimally transmit logical channel data having a high priority.
FIG. 3 illustrates a general method for selecting a TFC. FIG. 4 illustrates a structure wherein plural logical channels and plural transport channels are multiplexed to one CCTrCH. The process for selecting a TFC by the MAC layer will be explained with reference to FIG. 4. FIG. 4 illustrates a case wherein three logical channels (LoCH) and two transport channels (TrCH) are mapped into the CCTrCH. It further illustrates a case where a LoCH1 and a LoCH2 are multiplexed to the TrCH1. Here, the LoCH1 has a priority of 1, the LoCH2 has a priority of 5, and the LoCH3 has a priority of 3. Accordingly, the LoCH1 has the highest priority.
The MAC layer selects an optimum TFC in a preset TFCS within each TTI. As shown in FIG. 4, the TFCS is not determined by the MAC layer but is transmitted to the MAC layer from the RRC when the RRC configures an RB. In FIG. 4, 16 TFCs are defined, each TFC having an identification number called a TFC index. The numbers inside the round bracket (x, y) originally indicated the number of TBs of the TrCH1 having a size 1 and the number of TBs of the TrC2 having a size 2, respectively. However, in the present invention, the size of every TB is preferably equal to each other. Thus, the numbers inside the round bracket denote the number of TBs of the TrCH1 and the number of TBs of the TrC2.
Referring to FIG. 4, it is assumed that each Tx Buffer 1, Tx Buffer 2, and Tx Buffer 3 of the RLC respectively have 3, 4, and 2 data blocks (TB) that are in a transmission waiting state. Furthermore, it is assumed that a maximum 10 TBs can be transmitted by a limited maximum transmission power. Under this state, the MAC layer selects an optimum TFC (TFCI=11) by a method illustrated in FIG. 5.
The method for selecting an optimum TFC illustrated in FIG. 5 will be explained in more detail with reference to FIG. 3. Referring to FIG. 5, when 16 TFCs are provided (1), a maximum 10 TBs can be transmitted by a limited transmission power. Accordingly, the MAC layer configures a valid TFCS excluding TFCI=13 and TFCI=15 in a given TFCS (2) (S11). TFCI=13 and TFCI=15 are excluded because the sum of their respective TBs on TrCH1 and TrC2 exceeds 10 TBs. For example, for TFCI=13, there are 6 TBs present on TrCH1 and 6 TBs present on TrC2. Therefore, the sum of the TBs on TrCH1 and TrCH2 equals 12. 12 exceeds the maximum number of TBs that can be transmitted 10. Thus, the MAC layer excludes TFCI=13 when configuring the valid TFCS (2).
In the valid TFCS, the MAC layer excludes a TFC which transmits more TBs than the total number of TBs stored in the Tx buffer of the RLC at each transport channel. The reason for excluding a TFC greater than a data amount of the transport channel is as follows. If a TFC greater than a data amount of the transport channel is selected, the RLC must generate a TB comprised of only a padding without data, thus causing a waste of radio resources.
Referring to FIG. 4, the TrCH1 has a total 7 TBs resulting from the sum of the TBs stored in the Tx buffer 1 (3 TBs) and Tx buffer 2 (4 TBs). These TBs are transmitted to the TrCH1 via the LoCH1 and the LoCH2, respectively. Accordingly, the MAC layer excludes TFCI=14 because the number of TBs for TrCH1 of TFCI=14 equals 8. Because 8 exceeds the total number of TBs for TrCH1 of FIG. 4 (7 TBs), TFCI=14 is excluded. Likewise, because the TrC2 of FIG. 4 has 2 TBs, the MAC layer excludes the TFCI=9 and TFCI=12 because their number of TBs for TrC2, 4 TBs and 4 TBs, respectively exceeds 2 TBs. The MAC layer then goes on to configure a new valid TFCS excluding the TFCI=9, 12, and 14 (3) (S12).
Because the LoCH1 has the highest priority of 1, the MAC layer configures a new valid TFCS on the basis of the LoCH1. Since the LoCH1 has three TBs, the MAC layer selects TFCs which can optimally transmit the data of the LoCH1. Here, the MAC layer selects the TFCI=6, 7, 8, 10, and 11 because the number of TBs for TrCH1 of each TFCI is greater than 3. Accordingly, a new valid TFCS (4) is configured excluding TFCI=0, 1, 2, 3, 4, and 5 of step (3) (S13).
Subsequently, the MAC layer configures a new valid TFCS on the basis of the LoCH3 having the next highest priority. Since the LoCH3 has two TBs, the MAC layer selects TFCs which can optimally transmit the data of the LoCH3. Here, the MAC layer selects the TFCI=8 and the TFCI=11 because the number of TBs for TrC2 of each TFCI is equal to or greater than 2. Thus, a new valid TFCS (5) is configured excluding TFCI=6, 7, and 10 of step (4).
Furthermore, the MAC layer configures a new valid TFCS on the basis of the LoCH2 having the next highest priority. Since the LoCH2 has three TBs, the MAC layer selects the TFC which can optimally transmit the data of the LoCH2. Here, the MAC layer selects the TFCI=11 because it has the greatest number of TBs for TrCH1 among the TFCls left in the valid TFCS (5). Accordingly, a new valid TFCS (6) is configured excluding TFCI=8 of step (5) (S13-S14).
If there is a logical channel not constituting the valid TFCS, that is, a logical channel not included in the valid TFCS (S15), the MAC layer performs the step (4). However, if there is no logical channel not included in the valid TFCS, the MAC layer selects an arbitrary TFC within the configured valid TFCS as an optimum TFC (S16). Here, because there is only one TFC in the valid TFCS, the TFCI=11 is selected as the optimum TFC (6). Eventually, the number of TBs to be transmitted to each logical channel within the TTI are LoCH1=3, LoCH2=3, and LoCH3=2.
For reference, the order of the steps 2 and 3 in the above method may be interchanged.
In a conventional method for selecting a transport format combination, the MAC layer selects a TFC on the basis of a priority of a logical channel. That is, a TFC that can optimally transmit data of a logical channel having the highest priority is selected. However, data of a logical channel having a low priority may not be transmitted at all.
Referring to FIG. 4, the above problem will be explained. If the LoCH1 having the highest priority has 7 TBs, the MAC layer selects the TFCI=14=(8,0) by the method of FIG. 5. Accordingly, each logical channel has the following number of TBs to be transmitted within the TTI (LOCH1=7, LoCH2=1, and LoCH3=0), which is shown in FIG. 6.
A situation where data can not be transmitted due to a transmission of data of a logical channel having a higher priority despite there being transmittable data is referred to as starvation. As long as a TFC is selected on the basis of an absolute priority of a logical channel like in a general TFT selection method, starvation may occur.
Starvation significantly lowers the quality of a specific service. For example, for a real-time packet service such as audio streaming, a certain amount of data has to be continuously transmitted. However, if starvation occurs due to a priority of a logical channel, packets that have not been transmitted for a long time are no longer required and are discarded, thereby lowering the quality of service.